﻿using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel;
using CaptchaLib;

namespace ABC.Controllers.ViewModels
{
	public class LoginViewModel : BaseViewModel
	{
        [Required(ErrorMessage = "Обязательное поле Пользователь")]
		public string Login { get; set; }

        [Required(ErrorMessage = "Обязательное поле Пароль")]
		public string Password { get; set; }

        public bool InvalidEmail { get; set; }

        public bool InvalidPhone { get; set; }

        public bool InvalidLogin { get; set; }

        public bool Save { get; set; }
	}

    public class RegisterViewModel
    {
        [Required(ErrorMessage = "Обязательно поле Имя")]
        public string Name { get; set; }

        [Required(ErrorMessage = "Обязательно поле Электронная почта")]
        [RegularExpression(@"[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}")]
        public string Email { get; set; }

        [RegularExpression(@"\+7 \([0-9]{1,4}\) [0-9]{1,3}-[0-9]{1,2}-[0-9]{1,2}")]
        public string Phone { get; set; }

        [Required(ErrorMessage = "Обязательно поле Пароль")]
        public string Password { get; set; }

        public bool IsPhoneNumber { get; set; }

        public bool IsEmail { get; set; }
    }

    public class RemindViewModel 
    {
        public string Email { get; set; }

        public string Phone { get; set; }

        [ValidateCaptcha]
        public string CaptchaText { get; set; }

        public bool SendEmail { get; set; }

        public bool SendPhone { get; set; }       
    }

    public class ConfirmRegistrationViewModel
    {
        public string Email { get; set; }

        public string Code { get; set; }
    }
}